\hypertarget{class_async_result_finish_state}{\section{Async\-Result\-Finish\-State$<$ Result $>$ Class Template Reference}
\label{class_async_result_finish_state}\index{Async\-Result\-Finish\-State$<$ Result $>$@{Async\-Result\-Finish\-State$<$ Result $>$}}
}


{\ttfamily \#include $<$Async\-Result\-Finish\-State.\-hpp$>$}

Inheritance diagram for Async\-Result\-Finish\-State$<$ Result $>$\-:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=3.000000cm]{class_async_result_finish_state}
\end{center}
\end{figure}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hyperlink{class_async_result_finish_state_a169300432fc7ffa774c05d9c5257dbd9}{Async\-Result\-Finish\-State} (\hyperlink{class_async_result_start_state}{Async\-Result\-Start\-State}$<$ Result $>$ \&start\-State)
\item 
virtual \hyperlink{class_async_result_finish_state_a91396bc83db68ce16d10b5215e7ac10d}{$\sim$\-Async\-Result\-Finish\-State} ()
\item 
void \hyperlink{class_async_result_finish_state_a94508751555fa0c57279dc8275c10a45}{Add\-Transition} (Result result, \hyperlink{class_state}{State} \&state)
\end{DoxyCompactItemize}
\subsection*{Protected Member Functions}
\begin{DoxyCompactItemize}
\item 
virtual void \hyperlink{class_async_result_finish_state_a9c327aa447e197c8f6e3b50150d46162}{Handle\-Periodic} ()
\item 
void \hyperlink{class_async_result_finish_state_a2682c507d4936831454399babcdc1746}{Add\-Result\-Done\-Code\-Mapping} (Result result, \hyperlink{class_state_done_code}{State\-Done\-Code} done\-Code)
\end{DoxyCompactItemize}
\subsection*{Friends}
\begin{DoxyCompactItemize}
\item 
\hypertarget{class_async_result_finish_state_a80d53bbd64d09f36b13d691a306aa613}{class {\bfseries Async\-Result\-Effect\-State$<$ Result $>$}}\label{class_async_result_finish_state_a80d53bbd64d09f36b13d691a306aa613}

\end{DoxyCompactItemize}


\subsection{Detailed Description}
\subsubsection*{template$<$typename Result$>$class Async\-Result\-Finish\-State$<$ Result $>$}

The \hyperlink{class_async_result_finish_state}{Async\-Result\-Finish\-State} class waits on the \hyperlink{class_async_result}{Async\-Result} of an \hyperlink{class_async_result_start_state}{Async\-Result\-Start\-State} to finish.

This class is untested. 

\subsection{Constructor \& Destructor Documentation}
\hypertarget{class_async_result_finish_state_a169300432fc7ffa774c05d9c5257dbd9}{\index{Async\-Result\-Finish\-State@{Async\-Result\-Finish\-State}!Async\-Result\-Finish\-State@{Async\-Result\-Finish\-State}}
\index{Async\-Result\-Finish\-State@{Async\-Result\-Finish\-State}!AsyncResultFinishState@{Async\-Result\-Finish\-State}}
\subsubsection[{Async\-Result\-Finish\-State}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename Result $>$ {\bf Async\-Result\-Finish\-State}$<$ Result $>$\-::{\bf Async\-Result\-Finish\-State} (
\begin{DoxyParamCaption}
\item[{{\bf Async\-Result\-Start\-State}$<$ Result $>$ \&}]{start\-State}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}}}\label{class_async_result_finish_state_a169300432fc7ffa774c05d9c5257dbd9}
Constructor for \hyperlink{class_async_result_finish_state}{Async\-Result\-Finish\-State}. \hypertarget{class_async_result_finish_state_a91396bc83db68ce16d10b5215e7ac10d}{\index{Async\-Result\-Finish\-State@{Async\-Result\-Finish\-State}!$\sim$\-Async\-Result\-Finish\-State@{$\sim$\-Async\-Result\-Finish\-State}}
\index{$\sim$\-Async\-Result\-Finish\-State@{$\sim$\-Async\-Result\-Finish\-State}!AsyncResultFinishState@{Async\-Result\-Finish\-State}}
\subsubsection[{$\sim$\-Async\-Result\-Finish\-State}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename Result $>$ virtual {\bf Async\-Result\-Finish\-State}$<$ Result $>$\-::$\sim${\bf Async\-Result\-Finish\-State} (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{class_async_result_finish_state_a91396bc83db68ce16d10b5215e7ac10d}
Destructor for \hyperlink{class_async_result_finish_state}{Async\-Result\-Finish\-State}. 

\subsection{Member Function Documentation}
\hypertarget{class_async_result_finish_state_a2682c507d4936831454399babcdc1746}{\index{Async\-Result\-Finish\-State@{Async\-Result\-Finish\-State}!Add\-Result\-Done\-Code\-Mapping@{Add\-Result\-Done\-Code\-Mapping}}
\index{Add\-Result\-Done\-Code\-Mapping@{Add\-Result\-Done\-Code\-Mapping}!AsyncResultFinishState@{Async\-Result\-Finish\-State}}
\subsubsection[{Add\-Result\-Done\-Code\-Mapping}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename Result $>$ void {\bf Async\-Result\-Finish\-State}$<$ Result $>$\-::Add\-Result\-Done\-Code\-Mapping (
\begin{DoxyParamCaption}
\item[{Result}]{result, }
\item[{{\bf State\-Done\-Code}}]{done\-Code}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [protected]}}}\label{class_async_result_finish_state_a2682c507d4936831454399babcdc1746}
Adds a mapping to map a result from the async operation to a \hyperlink{class_state_done_code}{State\-Done\-Code}.


\begin{DoxyParams}{Parameters}
{\em result} & The result to map from. \\
\hline
{\em done\-Code} & The \hyperlink{class_state_done_code}{State\-Done\-Code} to transition to. \\
\hline
\end{DoxyParams}
\hypertarget{class_async_result_finish_state_a94508751555fa0c57279dc8275c10a45}{\index{Async\-Result\-Finish\-State@{Async\-Result\-Finish\-State}!Add\-Transition@{Add\-Transition}}
\index{Add\-Transition@{Add\-Transition}!AsyncResultFinishState@{Async\-Result\-Finish\-State}}
\subsubsection[{Add\-Transition}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename Result $>$ void {\bf Async\-Result\-Finish\-State}$<$ Result $>$\-::Add\-Transition (
\begin{DoxyParamCaption}
\item[{Result}]{result, }
\item[{{\bf State} \&}]{state}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}}}\label{class_async_result_finish_state_a94508751555fa0c57279dc8275c10a45}
Adds a transition that specifies which state to transition if the async operation finishes with the specified result.


\begin{DoxyParams}{Parameters}
{\em result} & The result for the transition. \\
\hline
{\em state} & The \hyperlink{class_state}{State} to transition to. \\
\hline
\end{DoxyParams}
\hypertarget{class_async_result_finish_state_a9c327aa447e197c8f6e3b50150d46162}{\index{Async\-Result\-Finish\-State@{Async\-Result\-Finish\-State}!Handle\-Periodic@{Handle\-Periodic}}
\index{Handle\-Periodic@{Handle\-Periodic}!AsyncResultFinishState@{Async\-Result\-Finish\-State}}
\subsubsection[{Handle\-Periodic}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename Result $>$ virtual void {\bf Async\-Result\-Finish\-State}$<$ Result $>$\-::Handle\-Periodic (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [protected]}, {\ttfamily [virtual]}}}\label{class_async_result_finish_state_a9c327aa447e197c8f6e3b50150d46162}
Periodicly runs if the state is not done yet. 

Reimplemented from \hyperlink{class_state_a29e67195da90c4c44e0e8f0fbe938c7c}{State}.



The documentation for this class was generated from the following file\-:\begin{DoxyCompactItemize}
\item 
C\-:/\-Users/\-Sam/\-Projects/\-F\-R\-C/\-Libraries/\-Fpk/\-Entech-\/\-Fpk-\/\-Subscribers/\-Entech-\/\-Fpk/Async\-Result\-Finish\-State.\-hpp\end{DoxyCompactItemize}
